/*
author:杨文超
email:yangwenchao@keynection.cn
*/
#pragma once


#ifdef __cplusplus
extern "C" {
#endif

typedef enum {
    ONE_TIME_MESSAGE,  // 只执行一次的消息
    LOOP_MESSAGE       // 需要循环执行的消息
} message_type_t;

typedef struct {
    char *filepath;
    int play_count;
} audio_message_t;

#define ATMOSPHERE_LAMP_ERROR_AUDIO         "/spiffs/atmosphere_lamp_error.wav"
#define BATTERY_ERROR_AUDIO  "/spiffs/battery_error.wav"
#define BT_ERROR_AUDIO      "/spiffs/bt_error.wav"
#define COMP_ERROR_AUDIO     "/spiffs/comp_error.wav"
#define DISPLAY_CAMERA_ERROR_AUDIO "/spiffs/display_camera_error.wav"
#define ENVIRONMENT_NTC_ERROR_AUDIO  "/spiffs/environment_ntc_error.wav"
#define ERR_CPU_TEST_OK_AUDIO  "/spiffs/err_cpu_test_ok.wav"
#define FAN_ERROR_AUDIO     "/spiffs/fan_error.wav"
#define GYRO_ERROR_AUDIO   "/spiffs/gyro_error.wav"
#define LOGO_LAMP_ERROR_AUDIO "/spiffs/logo_lamp_error.wav"
#define LTE_ERROR_AUDIO     "/spiffs/lte_error.wav"
#define NTC_ERROR_AUDIO     "/spiffs/ntc_error.wav"
#define OPEN_DOOR_AUDIO     "/spiffs/open_door.wav"
#define OPENDOOR_ALARM_AUDIO "/spiffs/opendoor_alarm.wav"
#define POWER_METER_ERROR_AUDIO "/spiffs/power_meter_error.wav"
#define SALE_CAMERA_ERROR_AUDIO "/spiffs/sale_camera_error.wav"
#define WIFI_ERROR_AUDIO     "/spiffs/wifi_error.wav"



void geminai_i2s_init_std_simplex(void);
void app_play_wav(int play_count,char *filepath) ;
void audio_create_task(void);
void test_demo_audio(void);


#ifdef __cplusplus
}
#endif